<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui"
                template="../templates/principal.xhtml">

    <ui:define name="content" id="content">
        <h1 class="title ui-widget-header ui-corner-all">Bem Vindo ao Cadastro de Empresas</h1>

        <h:form id="frmEmpresa">
            <p:panel id="panel">
                <p:growl id="messages" life="5000"  showDetail="true"/>

                <p:dataTable id="tabEmpresa" widgetVar="wtabEmpresa" var="empresa" value="#{empresaBean.lazyModel}" paginator="true" rows="12" lazy="true"
                             emptyMessage="Nenhum Registro Retornado ..." filterEvent="enter" resizableColumns="true">

                    <f:facet name="header">
                        Selecione uma linha e clique para Manutenção
                    </f:facet>

                    <p:column headerText="Descrição" style="width: 500px;">
                        <h:outputText value="#{empresa.nomEmpresa}" />
                    </p:column>

                    <p:column headerText="Numero Atual da Proposta" style="text-align: center">
                        <h:outputText value="#{empresa.numProposta}" />
                    </p:column>

                    <p:column headerText="Numero Atual da Ordem de Serviço" style="text-align: center">
                        <h:outputText value="#{empresa.numOs}" />
                    </p:column>

                    <p:column style="width: 100px;">
                        <p:panelGrid columns="4" styleClass="actions">
                            <p:commandButton id="selectButtonEmpresa" update=":frmEmpresa:panel :frmEmpresa:messages" 
                                             icon="ui-icon-search" title="Visualizar // Alterar" oncomplete="PF('empresaDialog').show(); PF('empresaDialog').toggleMaximize();">
                                <f:setPropertyActionListener value="#{empresa}" target="#{empresaBean.selectedEmpresa}" />
                                <f:setPropertyActionListener value="#{false}" target="#{empresaBean.disable}" />
                            </p:commandButton>

                            <p:commandButton id="excluirButtonEmpresa" update=":frmEmpresa:panel :frmEmpresa:messages" 
                                             icon="ui-icon-trash" title="Excluir Empresa" oncomplete="PF('confirmation').show();">
                                <f:setPropertyActionListener value="#{empresa}" target="#{empresaBean.selectedEmpresa}" />
                            </p:commandButton>
                        </p:panelGrid>
                    </p:column>

                    <f:facet name="footer">
                        <div style="text-align: left;">
                            <p:commandButton id="incluirButtonEmpresa" actionListener="#{empresaBean.preparaInserir}" value="Nova Empresa"
                                             update=":frmEmpresa:panel :frmEmpresa:messages"
                                             icon="ui-icon-pencil" title="Cadastrar Nova Empresa" oncomplete="PF('empresaDialog').show(); PF('empresaDialog').toggleMaximize();" />
                        </div>
                    </f:facet>
                </p:dataTable>

                <p:dialog id="dialog" header="Detalhes Empresa" widgetVar="empresaDialog" resizable="true"
                          showEffect="explode" hideEffect="explode" onHide="PF('empresaDialog').toggleMaximize();">

                    <p:panelGrid id="display" style="width: 100%;">
                        <p:row>
                            <p:column>
                                <h:outputText value="Razão Social:" />
                            </p:column>
                            <p:column colspan="9">
                                <p:inputText id="Descricao" value="#{empresaBean.selectedEmpresa.nomEmpresa}" style="width:600px; font-weight:bold;" />
                            </p:column>
                        </p:row>

                        <p:row>
                            <p:column colspan="2">
                                <h:outputText value="Numero Atual da Proposta:" />
                            </p:column>
                            <p:column colspan="2">
                                <p:inputMask mask="999/9999" id="idNumProposta" value="#{empresaBean.selectedEmpresa.numProposta}" style="font-weight:bold; text-align: right;" />
                            </p:column>
                            <p:column colspan="2">
                                <h:outputText value="Numero Atual da Ordem de Serviço:" />
                            </p:column>
                            <p:column colspan="2">
                                <p:inputMask mask="999/9999" id="idNumOs" value="#{empresaBean.selectedEmpresa.numOs}" style="font-weight:bold; text-align: right;" />
                            </p:column>
                            <p:column style="font-weight:bold;">Base de Calculo a Menor</p:column>
                            <p:column colspan="7">
                                <p:inputText id="inBaseCalculo" value="#{empresaBean.selectedEmpresa.baseCalculo}" style="font-weight:bold; text-align: right; width: 100px;"
                                             onkeyup="javascript:maskIt(this, event, '###.###.###,##', true)">
                                    <f:convertNumber locale="pt_BR" pattern="###,###,##0.00" minFractionDigits="2" />
                                </p:inputText>
                            </p:column>
                        </p:row>
                        
                        <p:row>
                            <p:column colspan="2">
                                <h:outputText value="% Juros:" />
                            </p:column>
                            <p:column colspan="2">
                                <p:inputText id="inJuros" value="#{empresaBean.selectedEmpresa.percJuros}" style="font-weight:bold; text-align: right; width: 100px;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber locale="pt_BR" pattern="##0.00" minFractionDigits="2" />
                                </p:inputText>
                            </p:column>
                            <p:column colspan="2">
                                <h:outputText value="% Multa:" />
                            </p:column>
                            <p:column colspan="9">
                                <p:inputText id="inMulta" value="#{empresaBean.selectedEmpresa.percMulta}" style="font-weight:bold; text-align: right; width: 100px;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber locale="pt_BR" pattern="##0.00" minFractionDigits="2" />
                                </p:inputText>
                            </p:column>
                        </p:row>
                    </p:panelGrid>

                    <p:panelGrid id="display2" style="width: 100%;">
                        <f:facet name="header">
                            <p:row>
                                <p:column colspan="4">
                                    <h:outputText value="CALCULO MENOR" />
                                </p:column>
                                <p:column colspan="4">
                                    <h:outputText value="CALCULO MAIOR" />
                                </p:column>
                            </p:row>
                        </f:facet>
                        <p:row>
                            <p:column>
                                <h:outputText value="% Cofins Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercCofins" value="#{empresaBean.selectedEmpresa.percCofins}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% Cofins Empresa:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercCofinsT" value="#{empresaBean.selectedEmpresa.percCofins_triunfo}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% Cofins Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercCofinsMaior" value="#{empresaBean.selectedEmpresa.percCofinsMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% Cofins Empresa:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercCofinsTMaior" value="#{empresaBean.selectedEmpresa.percCofins_triunfoMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column>
                                <h:outputText value="% P.I.S. Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercpis" value="#{empresaBean.selectedEmpresa.percPis}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% P.I.S. Empresa:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercpisT" value="#{empresaBean.selectedEmpresa.percPis_triunfo}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% P.I.S. Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercpisMaior" value="#{empresaBean.selectedEmpresa.percPisMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% P.I.S. Empresa:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercpisTMaior" value="#{empresaBean.selectedEmpresa.percPis_triunfoMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column>
                                <h:outputText value="% C.S.L. Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPerccsl" value="#{empresaBean.selectedEmpresa.percCsl}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% C.S.L. Empresa:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPerccslT" value="#{empresaBean.selectedEmpresa.percCsl_triunfo}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% C.S.L. Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPerccslMaior" value="#{empresaBean.selectedEmpresa.percCslMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% C.S.L. Empresa:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPerccslTMaior" value="#{empresaBean.selectedEmpresa.percCsl_triunfoMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column>
                                <h:outputText value="% I.R. Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercir" value="#{empresaBean.selectedEmpresa.percIr}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% I.R. Empresa:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercirT" value="#{empresaBean.selectedEmpresa.percIr_triunfo}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% I.R. Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercirMaior" value="#{empresaBean.selectedEmpresa.percIrMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% I.R. Empresa:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercirTMaior" value="#{empresaBean.selectedEmpresa.percIr_triunfoMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column>
                                <h:outputText value="% I.S.S. Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPerciss" value="#{empresaBean.selectedEmpresa.percIss}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% ou Valor I.S.S. Empresa:" />
                            </p:column>
                            <p:column style="text-align: justify;">
                                <p:inputText id="inPercissT" value="#{empresaBean.selectedEmpresa.percIss_triunfo}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###.###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                                <p:selectOneRadio id="options" value="#{empresaBean.selectedEmpresa.tipCalculoIss}">  
                                    <f:selectItem itemLabel="% Percentual" itemValue="P" />  
                                    <f:selectItem itemLabel="Fixo Trimestral" itemValue="F" />  
                                </p:selectOneRadio>
                            </p:column>

                            <p:column>
                                <h:outputText value="% I.S.S. Nota:" />
                            </p:column>
                            <p:column style="text-align: right;">
                                <p:inputText id="inPercissMaior" value="#{empresaBean.selectedEmpresa.percIssMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                            </p:column>

                            <p:column>
                                <h:outputText value="% ou Valor I.S.S. Empresa:" />
                            </p:column>
                            <p:column style="text-align: justify;">
                                <p:inputText id="inPercissTMaior" value="#{empresaBean.selectedEmpresa.percIss_triunfoMaior}" style="font-weight:bold; text-align: right;"
                                             onkeyup="javascript:maskIt(this, event, '###.###,##', true)">
                                    <f:convertNumber type="percent" pattern="##0.00" locale="pt-BR"/>
                                </p:inputText>
                                <p:selectOneRadio id="optionsMaior" value="#{empresaBean.selectedEmpresa.tipCalculoIssMaior}">  
                                    <f:selectItem itemLabel="% Percentual" itemValue="P" />  
                                    <f:selectItem itemLabel="Fixo Trimestral" itemValue="F" />  
                                </p:selectOneRadio>
                            </p:column>
                        </p:row>
                    </p:panelGrid>

                    <p:commandButton value="Gravar" update=":frmEmpresa:panel :frmEmpresa:messages" rendered="#{empresaBean.disable}"
                                     actionListener="#{empresaBean.incluir}" oncomplete="PF('empresaDialog').hide(); PF('empresaDialog').toggleMaximize();" />
                    <p:commandButton value="Gravar" update=":frmEmpresa:panel :frmEmpresa:messages" rendered="#{!empresaBean.disable}"
                                     actionListener="#{empresaBean.alterar}" oncomplete="PF('empresaDialog').hide(); PF('empresaDialog').toggleMaximize();" />
                </p:dialog>

                <p:dialog id="confirmaExclusao" header="Confirma a Exclusão dessa Empresa?" widgetVar="confirmation">

                    <p:commandButton value="Sim" update=":frmEmpresa:panel :frmEmpresa:messages" oncomplete="PF('confirmation').hide(); PF('empresaDialog').hide(); PF('empresaDialog').toggleMaximize();"
                                     actionListener="#{empresaBean.excluir}" />
                    <p:commandButton value="Não" onclick="PF('confirmation').hide()" type="button" />

                </p:dialog>
            </p:panel>
        </h:form>
    </ui:define>
</ui:composition>
